home *** CD-ROM | disk | FTP | other *** search
/ Aminet 3 / Aminet 3 - July 1994.iso / Aminet / dev / amos / ProcLib3_0.lha / Contents next >
Encoding:
Text File  |  1994-12-17  |  24.6 KB  |  605 lines

  1. ==
  2. 3D
  3. ==
  4.  
  5. SPIN3D
  6.   Description   : Rotates a 3D object.
  7.   Calling format: ROTATE[YAW,PITCH]
  8.                       YAW   = degrees to rotate around Y-axis.    Y Z
  9.                       PITCH = degrees to rotate around X-axis.    |/
  10.                                                                   +-X
  11.   Return value  : None.
  12.   Special notes : The included procedure SETUP sets up the object.  Read
  13.                       its documentation for more information.
  14.                   This is more of a demonstration program than a procedure,
  15.                       but I've included it anyway because of its usefulness.
  16.   Author        : Scott Southurst
  17.                   maverick@deakin.edu.au
  18.  
  19.  
  20. ====
  21. AMAL
  22. ====
  23.  
  24. _AMAL_BOUNCING_BALLS
  25.   Description   : Creates bouncing balls with AMAL.  This only sets up the
  26.                       AMAL programs; you need to write the main loop
  27.                       yourself.
  28.   Calling format: _AMAL_BOUNCING_BALLS[NUM,GROUND,XLEFT,XRIGHT]
  29.                       NUM    = number of balls to create
  30.                       GROUND = Y-coordinate of "ground"
  31.                       XLEFT  = X-coordinate of left "wall"
  32.                       XRIGHT = X-coordinate of right "wall"
  33.   Return value  : None.
  34.   Special notes : The boundaries for the balls are not set in stone; they
  35.                       can be changed with the Amreg() function, as follows:
  36.                           GROUND = Amreg(2)
  37.                           XLEFT  = Amreg(0)
  38.                           XRIGHT = Amreg(1)
  39.                       So, if you use other AMAL routines in the same
  40.                       program, be sure not to use these three registers.
  41.   Author        : Mark Baker
  42.                   ukrbake@prl.philips.co.uk
  43.  
  44. _AMAL_FIREWORKS
  45.   Description   : Creates fireworks in AMAL.  The procedure includes the
  46.                       running loop; you can change or remove it if you need
  47.                       to.
  48.   Calling format: _AMAL_FIREWORKS[NUM]
  49.                       NUM = number of particles for explosion
  50.   Return value  : None.
  51.   Special notes : 8 particles are always created, even if you specify a
  52.                       number less than 8 in the procedure call.
  53.   Author        : Mark Baker
  54.                   ukrbake@prl.philips.co.uk
  55.  
  56.  
  57. ====
  58. Data
  59. ====
  60.  
  61. CAPS_NAME
  62.   Description   : Capitalises a name correctly; e.g. "jean-luc picard" ->
  63.                       "Jean-Luc Picard".
  64.   Calling format: CAPS_NAME[NAME$]
  65.                       NAME$ = Name to capitalise.
  66.   Return value  : A string containing the name, correctly capitalised.
  67.   Author        : Gavin Segal
  68.                   cs922044@red.ariel.cs.yorku.ca
  69.  
  70. QUICKSORT
  71.   Description   : Performs a "Quick Sort" on an array.
  72.   Calling format: QUICKSORT[NO,ST]
  73.                       NO = Number of array elements.
  74.                       ST = First array element (0 or 1).
  75.   Return value  : None.
  76.   Special notes : The procedure needs to be modified somewhat to fit your
  77.                       specific program.  Places that need to be changed are
  78.                       so marked in the procedure.
  79.   Author        : ???
  80.  
  81. REF_ASCII
  82.   Description   : Converts a number into a 3-character ASCII representation.
  83.                       Numbers in the range 0 to 16,581,374 can be converted.
  84.   Calling format: REF_ASCII[N]
  85.                       N = the number to be converted
  86.   Return value  : A string containing the 3-character representation of N.
  87.   Author        : Gavin Segal
  88.                   cs922044@red.ariel.cs.yorku.ca
  89.  
  90. REF_NUMBER
  91.   Description   : Converts a 3-character ASCII representation of a number
  92.                       (see REF_ASCII) back to the original number.
  93.   Calling format: REF_NUMBER[N$]
  94.                       N$ = the 3-character string representing the number
  95.   Return value  : An integer, the number represented by N$.
  96.   Author        : Gavin Segal
  97.                   cs922044@red.ariel.cs.yorku.ca
  98.  
  99.  
  100. ========
  101. Graphics
  102. ========
  103.  
  104. _FAST_ELLIPSE
  105.   Description   : Draws an ellipse using only fixed-point math.
  106.   Calling format: _FAST_ELLIPSE[XC,YC,RX,RY,_FILLED]
  107.                       XC,YC - center of ellipse
  108.                       RX,RY - X and Y radii (for a circle, RX=RY)
  109.                       _FILLED - whether ellipse should be filled or not
  110.   Return value  : None.
  111.   Special notes : Requires procedure _4WS (included in file).
  112.   Author        : Michael Sikorsky
  113.                   sikorsky@bode.ee.ualberta.ca
  114.  
  115. _FAST_LINE
  116.   Description   : Draws a line using only fixed-point math.
  117.   Calling format: _FAST_LINE[X1,Y1,X2,Y2]
  118.                       X1,Y1 - coordinates of the first point
  119.                       X2,Y2 - coordinates of the second point
  120.   Return value  : None.
  121.   Author        : Michael Sikorsky
  122.                   sikorsky@bode.ee.ualberta.ca
  123.  
  124. MULTI_LINE
  125.   Description   : Draws a multi-colour line.
  126.   Calling format: MULTI_LINE[X1,Y1,X2,Y2,NUM,LIM]
  127.                       X1,Y1 - starting coordinates
  128.                       X2,Y2 - ending coordinates
  129.                       NUM   - starting colour
  130.                       LIM   - ending colour
  131.   Return value  : None.
  132.   Special notes : When the colour number reaches LIM, it returns to 1.
  133.   Author        : Mark Baker
  134.                   ukrbake@prl.philips.co.uk
  135.  
  136. PALETTE_PROCS
  137.   Description   : Five procedures to store, set, and fade the colours of a
  138.                       screen.
  139.   Calling format: _PUTPAL[N,_START,_END] - store screen colours in palette
  140.                       N      = Palette number
  141.                       _START = First colour to store
  142.                       _END   = Last colour to store
  143.                   _GETPAL[N,_START,_END] - set screen colours from palette
  144.                       N      = Palette number
  145.                       _START = First colour to set
  146.                       _END   = Last colour to set
  147.                   _FADEPALxx[T,N] - fade first 8, 16, or 32 colours to
  148.                                     palette N (xx=8, 16, or 32)
  149.                       T = VBLs between colour changes
  150.                       N = Palette number
  151.   Return value  : None for all procedures.
  152.   Special notes : The procedures require that your program set up an array
  153.                       PAL() at the beginning of the program; read the file
  154.                       for details.
  155.   Author        : Seumas McNally
  156.                   sfmcnally@BIX.com
  157.  
  158. _PALETTE_TO_ANTIQUE
  159.   Description   : Converts palette to "antique photograph".  Hard to
  160.                       describe; you'll have to see it yourself.
  161.   Calling format: _PALETTE_TO_ANTIQUE[_SCREEN]
  162.                       _SCREEN - the screen number to affect.
  163.   Return value  : None.
  164.   Author        : Michael Sikorsky
  165.                   sikorsky@bode.ee.ualberta.ca
  166.  
  167. _PALETTE_TO_BW
  168.   Description   : Converts palette to black and white.
  169.   Calling format: _PALETTE_TO_BW[_SCREEN]
  170.                       _SCREEN - the screen number to affect.
  171.   Return value  : None.
  172.   Author        : Michael Sikorsky
  173.                   sikorsky@bode.ee.ualberta.ca
  174.  
  175. _PALETTE_TO_NEGATIVE
  176.   Description   : Converts palette to "negative" colours (e.g. black<->white)
  177.   Calling format: _PALETTE_TO_NEGATIVE[_SCREEN]
  178.                       _SCREEN - the screen number to affect.
  179.   Return value  : None.
  180.   Author        : Michael Sikorsky
  181.                   sikorsky@bode.ee.ualberta.ca
  182.  
  183. PICKCOLOURS
  184.   Description   : This procedure returns the numbers of the darkest, the mid
  185.                       brightest and brightest colour of the current screen.
  186.   Calling format: PICKCOLOURS
  187.   Return value  : A string. The string contains the numbers mentioned
  188.                       above, separated by colons (i.e. "1:21:10").
  189.   Special notes : The file contains a procedure called Brightness that this
  190.                       procedure needs, so do not remove.
  191.                       There's a test programme included.
  192.                       There's a guide included.
  193.   Author        : Branko Collin
  194.                   u249026@vm.uci.kun.nl
  195.  
  196. SBOX
  197.   Description   : Draws a 3D-looking box with rounded corners and a dark
  198.                       outline.  Good for drawing gadgets, particularly in
  199.                       conjunction with TBOX.
  200.   Calling format: SBOX[X1,Y1,X2,Y2,IN]
  201.                       (X1,Y1),(X2,Y2) = coordinates for the box
  202.                       IN = True if the box should be "depressed", False
  203.                                otherwise.
  204.   Return value  : None.
  205.   Special notes : To achieve the 3D-effect, the procedure uses colours 0 and
  206.                       N-1 (for an N-colour screen).  It assumes that colour
  207.                       0 will be dark and colour N-1 will be bright.  Also,
  208.                       the procedure draws a dotted line for the "inner
  209.                       outline"; you need to set the background ink colour
  210.                       to some colour different from 0 and N-1 in intensity.
  211.   Author        : Paul Hickman
  212.                   ph@doc.ic.ac.uk
  213.  
  214. _SEPARATE_RGB
  215.   Description   : Filters colours in picture.
  216.   Calling format: _SEPARATE_RGB[_SCREEN,X]
  217.                       _SCREEN - the screen number to affect.
  218.                       X       - the "filter" colour:
  219.                                   1 - Red
  220.                                   2 - Green
  221.                                   3 - Blue
  222.                                   4 - Magenta
  223.                                   5 - Yellow
  224.                                   6 - Purple
  225.   Return value  : None.
  226.   Author        : Michael Sikorsky
  227.                   sikorsky@bode.ee.ualberta.ca
  228.  
  229. SIMPLEARC
  230.   Description   : This routine draws an arc, where arc is defined as part
  231.                       of an ellipse (alas, no fancy bezier curves).
  232.   Calling format: SIMPLEARC[X,Y,RX,RY,_START_DEG,_TOT_DEG]
  233.                       X,Y           = centre coordinates
  234.                       RX,RY         = radii for x and y directions
  235.                       _START_DEG    = starting point in degrees
  236.                       _TOT_DEG      = total length in degrees
  237.   Return value  : None.
  238.   Special notes : There's a test programme included.
  239.                       Tested on an A500, .5 fast, .5 chip, 2nd drive.
  240.                       Please, do try and improve it.
  241.   Author        : Branko Collin
  242.                   u249026@vm.uci.kun.nl
  243.  
  244. TBOX
  245.   Description   : Draws a 3D-looking box.
  246.   Calling format: TBOX[X1,Y1,X2,Y2,IN]
  247.                       (X1,Y1),(X2,Y2) = coordinates for the box
  248.                       IN = True if the box should be "depressed", False
  249.                                otherwise.
  250.   Return value  : None.
  251.   Special notes : To achieve the 3D-effect, the procedure uses colours 0 and
  252.                       N-1 (for an N-colour screen).  It assumes that colour
  253.                       0 will be dark and colour N-1 will be bright.
  254.   Author        : Paul Hickman
  255.                   ph@doc.ic.ac.uk
  256.  
  257.  
  258. =====
  259. Icons
  260. =====
  261.  
  262. _MAKEMASK
  263.   Description   : Creates a mask for an icon, using a given colour as
  264.                       "transparent".
  265.   Calling format: _MAKEMASK[_SCREEN,_COLOUR,TEMP1,TEMP2,X1,Y1,X2,Y2,_ICON]
  266.                       _SCREEN     - Screen that icon is displayed on
  267.                       _COLOUR     - Colour to make transparent
  268.                       TEMP1,TEMP2 - Two temporary (unused) screens
  269.                       (X1,Y1)     - Upper-left corner of icon
  270.                       (X2,Y2)     - Lower-right corner of icon
  271.                       _ICON       - Icon number to create mask for
  272.   Return value  : None.
  273.   Special notes : Can be changed to work with bobs instead of icons; just
  274.                       just change "Icon Base" to "Sprite Base".
  275.                   Assumes that the icon exists and has a mask.  A typical
  276.                       calling sequence would be:
  277.  
  278.                       Get Icon N,X1,Y1 To X2,Y2
  279.                       Make Icon Mask N
  280.                       _MAKEMASK[Screen,_COLOUR,TEMP1,TEMP2,X1,Y1,X2,Y2,N]
  281.  
  282.   Author        : Michael Sikorsky
  283.                   sikorsky@bode.ee.ualberta.ca
  284.  
  285.  
  286. =====
  287. Other
  288. =====
  289.  
  290. _DATECONVERT
  291.   Description   : Converts a date in the format "YYMMDD" (e.g. "930911") into
  292.                       a more human-readable format.
  293.   Calling format: _DATECONVERT[DATE$,FORMAT]
  294.                       DATE$  = the date in YYMMDD format
  295.                       FORMAT = the format to return the date in.  See the
  296.                                    procedure's documentation for details.
  297.   Return value  : The date, as a string, in the specified format.
  298.   Author        : Geoffrey Carman
  299.                   cs922012@ariel.cs.yorku.ca
  300.  
  301. NEW_INPUT
  302.   Description   : Extended input routines for strings and real numbers.
  303.                   The routines only accept characters legal for the input
  304.                   type and allow a limit on the length of the input.
  305.   Calling format: S_INPUT[L,DEFAULT$]
  306.                       L - Input field length
  307.                       DEFAULT$ - String that is shown at the
  308.                        start of the proc and taken as input
  309.                        if the user just hits RETURN.
  310.                   R_INPUT[L,DEFAULT#]
  311.                       L - Input field length
  312.                       DEFAULT# - Number that is shown at the
  313.                           start of the proc and taken as input
  314.                           if the user just hits RETURN.
  315.   Return value  : String or real number with user input.
  316.   Special notes : Includes a test program.
  317.   Author        : Christian Mumenthaler
  318.                   mumi@molbio.ethz.ch
  319.  
  320. _TO_NTSC
  321.   Description   : Switches display to NTSC mode.
  322.   Calling format: _TO_PAL
  323.   Return value  : None.
  324.   Special notes : Requires ECS or better chipset.
  325.   Author        : Michael Sikorsky
  326.                   sikorsky@bode.ee.ualberta.ca
  327.  
  328. _TO_PAL
  329.   Description   : Switches display to PAL mode.
  330.   Calling format: _TO_PAL
  331.   Return value  : None.
  332.   Special notes : Requires ECS or better chipset.
  333.   Author        : Michael Sikorsky
  334.                   sikorsky@bode.ee.ualberta.ca
  335.  
  336.  
  337. ============
  338. ScreenEaters
  339. ============
  340.  
  341. [See the file ScreenEaters/SE.doc for more information.  Note that no screen]
  342. [eaters return any values.                                                  ]
  343.  
  344. SEB_4LEAFWIPE
  345.   Description   : Wipes the screen from the four sides inward.
  346.   Calling format: SEB_4LEAFWIPE[SCR,C]
  347.   Author        : Paul Hickman
  348.                   ph@doc.ic.ac.uk
  349.  
  350. SEB_DIAGONAL_WIPE
  351.   Description   : Wipes the screen in a circular pattern.
  352.   Calling format: SEB_DIAGONAL_WIPE[SCR,C]
  353.   Author        : Paul Hickman
  354.                   ph@doc.ic.ac.uk
  355.  
  356. SEB_HSTRIPS
  357.   Description   : Divides the screen into horizontal strips which then fold
  358.                       in on each other.
  359.   Calling format: SEB_HSTRIPS[SCR,C,N,D]
  360.                       N = Number of strips; must be a factor of Screen Height
  361.                       D = Delay in VBLs
  362.   Author        : Paul Hickman
  363.                   ph@doc.ic.ac.uk
  364.  
  365. SEB_PATTERN_WIPE
  366.   Description   : Uses a pattern to clear the screen.
  367.   Calling format: SEB_PATTERN_WIPE[SCR,C]
  368.   Author        : Paul Hickman
  369.                   ph@doc.ic.ac.uk
  370.  
  371. SEB_ROLL
  372.   Description   : "Rolls" the screen up, down, left, or right.
  373.   Calling format: SEB_ROLL[SCR,C,TMPSCR,RW,D]
  374.                       TMPSCR = Temporary screen number
  375.                       RW     = Width of "roll".  Should be less than 1/3 the
  376.                                    size of the screen in the direction of
  377.                                    the roll.  In other words, when rolling
  378.                                    left or right, RW should be less than
  379.                                    Screen Width/3; when rolling up or down,
  380.                                    should be less than Screen Height/3.
  381.                       D      = Roll direction: 0=up, 1=down, 2=left, 3=right
  382.   Special notes : The original submission consisted of four procedures,
  383.                       ROLLUP, ROLLDOWN, ROLLLEFT, and ROLLRIGHT.  For ease
  384.                       of use I wrote ROLL.  If you only need one or two
  385.                       directions of rolling, you can just copy the procedures
  386.                       you need and call them directly.
  387.   Author        : Paul Hickman, based on code from Seumas McNally
  388.                   PH - ph@doc.ic.ac.uk; SM - sfmcnally@BIX.com
  389.                   ROLL procedure by Andrew Church (95ACHURCH@vax.mbhs.edu)
  390.  
  391. SEB_TILES
  392.   Description   : Clears the screen by removing blocks.
  393.   Calling format: SEB_TILES[SCR,C,BS,SPEED]
  394.                       BS    = size of blocks (multiples of 8 work best)
  395.                       SPEED = Delay in VBLs
  396.   Author        : Derek Waters
  397.                   n1djwate@aelmg.adelaide.edu.au
  398.  
  399. SEB_TRICLEAR
  400.   Description   : Clears the screen by erasing triangular sections.
  401.   Calling format: SEB_TRICLEAR[SCR,C,N,D]
  402.                       N = size of triangles; must be a factor of both
  403.                               Screen Width and Screen Height
  404.                       D = Delay in VBLs
  405.   Author        : Paul Hickman
  406.                   ph@doc.ic.ac.uk
  407.  
  408. SEB_VSTRIPS
  409.   Description   : Divides the screen into vertical strips which then fold in
  410.                       on each other.
  411.   Calling format: SEB_VSTRIPS[SCR,C,N,D]
  412.                       N = Number of strips; must be a factor of Screen Width
  413.                       D = Delay in VBLs
  414.   Author        : Paul Hickman
  415.                   ph@doc.ic.ac.uk
  416.  
  417. SED_EATZOOM
  418.   Description   : Divides the screen into tiles which then collapse inward
  419.                       upon themselves.
  420.   Calling format: SED_EATZOOM[SCR,C,TMPSCR,TX,TY,ZMODE]
  421.                       TMPSCR = temporary screen number
  422.                       TX,TY  = size of tiles.  TX should be a factor of
  423.                                    Screen Width; TY, of Screen Height.
  424.                       ZMODE  = 1: tiles cleared from top to bottom
  425.                                2: tiles cleared randomly
  426.                                3: tiles cleared in a circular pattern.
  427.   Author        : Paul Hickman, based on code from Seumas McNally
  428.                   PH - ph@doc.ic.ac.uk; SM - sfmcnally@BIX.com
  429.  
  430. SES_ANGLEWIPE
  431.   [ The original version of this procedure had a bug that would ]
  432.   [ consistently crash the computer.  I fixed the bug.  --AC    ]
  433.   Description   : Wipes the screen in a quarter-circle pattern, using one
  434.                       corner as the center of the circle.
  435.   Calling format: SES_ANGLEWIPE[SCR,C,CORNER]
  436.                       CORNER = corner to start from: 1=TL, 2=BL, 3=BR, 4=TR
  437.   Author        : Derek Waters
  438.                   n1djwate@aelmg.adelaide.edu.au
  439.  
  440. SES_EATZOOM
  441.   Description   : Divides the screen into tiles which then collapse inward
  442.                       upon themselves.
  443.   Calling format: SED_EATZOOM[SCR,C,TMPSCR,TS,ZMODE]
  444.                       TMPSCR = temporary screen number
  445.                       TS     = size of tiles (X and Y).  Should be a factor
  446.                                    of Screen Width and Screen Height.
  447.                       ZMODE  = 1: tiles cleared from top to bottom
  448.                                2: tiles cleared randomly
  449.                                3: tiles cleared in a circular pattern.
  450.   Author        : Paul Hickman, based on code from Seumas McNally
  451.                   PH - ph@doc.ic.ac.uk; SM - sfmcnally@BIX.com
  452.  
  453. SES_SAND
  454.   Description   : This one is hard to describe.  It's (apparently) supposed
  455.                       to be a sandglass-effect, but it looks like a big
  456.                       triangle going up the screen.
  457.   Calling format: SES_SAND[SCR,C,SPEED]
  458.                       SPEED = Delay in VBLs
  459.   Author        : Derek Waters
  460.                   n1djwate@aelmg.adelaide.edu.au
  461.  
  462.  
  463. ========
  464. ScreenFX
  465. ========
  466.  
  467. MOVING_RAINBOWS
  468.   Description   : Creates moving rainbows.  This is actually a set of four
  469.                       procedures that set up, display, animate, and remove
  470.                       the rainbows.
  471.   Calling format: SET_MOVING_RAINBOWS[AMP,POS,SPC,AFFECTCOL,SPEED]
  472.                       AMP       = amplitude of movement (_RAIN_AMP)
  473.                       POS       = central rainbow position (_RAIN_POS)
  474.                       SPC       = spacing between rainbows (_RAIN_SPACE)
  475.                       AFFECTCOL = colour number to affect
  476.                       SPEED     = speed of rainbows (_RAIN_SPEED)
  477.                   _DISPLAY_RAINBOWS[SPEED,SPC]
  478.                       SPEED     = speed at which the rainbows appear
  479.                       SPC       = as above
  480.                   _ANIMATE_RAINBOWS
  481.                   _REMOVE_RAINBOWS[SPEED]
  482.                       SPEED     = speed at which the rainbows disappear
  483.   Return value  : None for all procedures.
  484.   Special notes : Due to the unusual nature of this submission, I have
  485.                       included an example program with the procedures.  The
  486.                       program includes the necessary variable initialization
  487.                       for the procedures.  Where I have listed a variable
  488.                       name in parentheses in the "Calling format" section,
  489.                       the variable of that name in the example program will
  490.                       have a comment providing more information about that
  491.                       variable.  DO NOT change the names of the variables;
  492.                       they are needed by the rainbow procedures!
  493.   Author        : Mark Baker
  494.                   ukrbake@prl.philips.co.uk
  495.  
  496.  
  497. =======
  498. Screens
  499. =======
  500.  
  501. RDZONE
  502.   Description   : Reads the coordinates of a screen zone into global
  503.                       variables X1,Y1,X2,Y2 without changing the current
  504.                       screen.  If the zone does not exist, the variables
  505.                       remain unchanged.
  506.   Calling format: RDZONE[SCRN,Z]
  507.                       SCRN = Screen number
  508.                       Z    = Zone number
  509.   Return value  : True if the zone existed, FALSE if it did not.
  510.   Author        : Paul Hickman
  511.                   ph@doc.ic.ac.uk
  512.  
  513. RDZONE2
  514.   Description   : Reads the coordinates of a screen zone into global
  515.                       variables X1,Y1,X2,Y2 without changing the current
  516.                       screen.  If the zone does not exist, an "Illegal
  517.                       function call" error is generated.
  518.   Calling format: RDZONE2[SCRN,Z]
  519.                       SCRN = Screen number
  520.                       Z    = Zone number
  521.   Return value  : None.
  522.   Author        : Paul Hickman
  523.                   ph@doc.ic.ac.uk
  524.  
  525.  
  526. ======
  527. System
  528. ======
  529.  
  530. _DOSERROR
  531.   Description   : Returns the AmigaDOS error message for an IoErr() error
  532.                       code.
  533.   Calling format: _DOSERROR[ERR]
  534.                       ERR - IoErr() (Doscall(-132)) return value.
  535.   Return value  : String that contains the error text.
  536.   Special notes : This procedure handles all errors for AmigaDOS 2.1.  Use
  537.                       of the AmigaDOS 2.04 Fault() function is not yet
  538.                       implemented.
  539.   Author        : Andrew Church
  540.                   95ACHURCH@vax.mbhs.edu
  541.  
  542. _GET_ARGS
  543.   Description   : Processes Command Line$ to determine CLI arguments.
  544.   Calling format: _GET_ARGS[CMDLN$,_MAXARGC]
  545.                       CMDLN$   = String of CLI arguments taken from
  546.                                      Command Line$
  547.                       _MAXARGC = Maximum number of arguments you'd expect
  548.   Return value  : Number of arguments found.  Also, stores the arguments
  549.                       in ARGV$() which is shared.
  550.   Special notes : Includes a test program.
  551.   Author        : Michael Cox
  552.                   aj639@Cleveland.Freenet.EDU
  553.  
  554. MAKE_RAM
  555.   Description   : Attempts to access the RAM disk.  This results in the RAM
  556.                       disk being initialised if it was not already.
  557.   Calling format: RAM_DISK
  558.   Return value  : None.
  559.   Author        : Paul Hickman
  560.                   ph@doc.ic.ac.uk
  561.  
  562.  
  563. ====
  564. Text
  565. ====
  566.  
  567. MESSAGEBOX
  568.   Description   : Creates a colourful message box.  This is actually two
  569.                       separate procedures, one to display the message box
  570.                       and one to clear it.
  571.   Calling format: M_DISP[CLR,MESSAGE$]
  572.                       CLR      = Basic colour to use.  This should be one
  573.                                      of $001,$010,$011,$100,$101,$110,$111.
  574.                       MESSAGE$ = Message to display.
  575.                   M_CLEAR
  576.   Return value  : None for both procedures.
  577.   Special notes : You must have a 32- or 64-colour screen opened before the
  578.                       message box is displayed.
  579.   Author        : Mark Baker
  580.                   ukrbake@prl.philips.co.uk
  581.  
  582. OPENFONT
  583.   Description   : Opens/closes a font.
  584.   Calling format: OPENFONT[NAME$,SIZE,_REM]
  585.                       NAME$ - Name of the font.  ".font" extension is
  586.                                 optional.
  587.                       SIZE  - Font size.
  588.                       _REM  - 0 to open the font, nonzero to close it.
  589.   Return value  : Font number (to be used with Set Font).
  590.   Author        : Andrew Church
  591.                   95ACHURCH@vax.mbhs.edu
  592.  
  593. _SHADOW_TXT
  594.   Description   : Writes shadowed text to the current screen.
  595.   Calling format: _SHADOW_TXT[X,Y,_FG,_BG,_TXT$]
  596.                       X,Y   - coordinates for text (like Text command)
  597.                       _FG   - foreground colour
  598.                       _BG   - background colour
  599.                       _TXT$ - text to write
  600.   Return value  : None.
  601.   Author        : Michael Sikorsky
  602.                   sikorsky@bode.ee.ualberta.ca
  603.  
  604.  
  605.